Datenmodellierung

VU 181.117 (2.0)

Sommersemster 2005

Beispiel 2 - SQL-SELECTs
Angabe


Abgabeschluss für das SQL-Beispiel ist der 17. Juni.
Um zur Prüfung am 17. Juni antreten zu dürfen, müssen Sie das Beispiel bis spätestens 16. Juni (dem Tag vor der Prüfung) korrekt abgeben.
Geben Sie Ihre Lösungen erst nach dem 16. Juni korrekt ab, so können Sie erst bei einem der Prüfungstermine im Herbst antreten.
Die 5 Bonuspunkte für dieses Beispiel bekommen Sie, falls Sie dieses bis 24. Mai korrekt abgeben.

Die Anzahl der zu lösenden Abfragen richtet sich nach dem Zeitraum, in der die Beispiele abgageben werden:

Abgabewoche
Anzahl der zu lösenden Abfragen
18. - 24. 5.
18
25. 5. - 10. 6.
20
13. - 17. 6.
22

Bei der Abgabe sind bitte die folgenden Dinge mitzubringen/vorzubereiten:

Bei der Abgabe

Alle diese Punkte sind für jemanden, der die Abfragen selbstständig gelöst hat problemslos zu bewältigen.

Die Datenbank (PostgreSQL 7.2) mit Testdaten finden Sie unter:

http://websql.dbai.tuwien.ac.at/cc_fixed/

weitere  Datenbanken zum Testen und Üben finden Sie unter:

http://websql.dbai.tuwien.ac.at/

Die Datenbanken sind durch ein Passwort geschützt (Passwort vergessen?).

Sie können die Beispiele auch auf einer anderen, eigenen Datenbank lösen, als mit der von uns zur Verfügung gestellten (CREATE Statements, Testdaten und DROPs). Ihre Abfragen müssen jedoch auf der Übungsdatenbank laufen und die richtigen Ergebnisse liefern. (Bitte beachten Sie, dass es beim Einspielen der Daten in andere Datenbanken zu Kompatibilitätsproblemen kommen kann, bei deren Behebung wir Ihnen nicht behilflich sein können. Informtionen zu diesen Themen können Sie jedoch in den entsprechenden Foren finden.)

Wir behalten uns vor, die Testdaten im Laufe der Übung zu ändern (Sie können dies allerdings nicht tun). Dies sollte keine Auswirkung auf funktionierende Abfragen haben. Lediglich das Resultat könnte sich dadurch ändern. Richtige Abfragen liefern immer das richtige Ergebnis, unabahängig von den Testdaten - eine Abfrage ist nicht richtig, nur weil sie bei bestimmten Testdaten das richtige Ergebnis liefert.


Filmdatenbank




Relationen

CREATE - Statements (nur zur Info, bereits in der LVA-Datenbank enthalten)


Beschreibung



Aufgabenstellung

Erstellen Sie nun SQL-Abfragen, welche die folgenden Daten ausgeben:
  1. Geben Sie alle Filme aus, die im Jahr 2003 herausgekommen sind.
  2. Geben Sie alle lebenden Personen aus, sortieren Sie diese nach dem Geburtsdatum.
  3. Geben Sie Name und Geburtsdatum aller Schauspieler aus, die vor dem 11. Mai 1985 geboren wurden aus, sortieren Sie diese nach dem Namen.
  4. Geben Sie alle Schauspieler mit den Filmen in denen sie mitgespielt haben aus.
  5. Geben Sie alle Schauspieler aus, die während Dreharbeiten (an denen sie beteiligt waren) verstorben sind.
  6. Geben Sie alle Figuren aus, die in mindestens 3 Filmen vorkommen und immer vom selben Schauspieler gespielt wurden.
  7. Geben Sie alle Figuren aus, die in mindestens 3 Filmen vorkommen und immer von einem anderen Schauspieler gespielt wurden. Geben Sie des weiteren die Anzhl der entsprechenden Filme, sowie die Anzahl der Schauspieler aus.
  8. Geben Sie alle Personen aus, die in einem Film sowohl Regie geführt, das Drehbuch geschrieben, als auch eine Rolle gespielt haben.
  9. Geben Sie alle Filmpaare aus, bei denen die "Fortsetzung" VOR dem Film selbst gedreht wurde (oder das Prequel nach dem Film).
  10. Geben Sie alle "reinen" Komödien aus (Filme, die kein 2. Genre zugewiesen haben)
  11. Geben Sie alle Schauspieler aus, die schon in einem Spionagefilm, aber noch in keinem Actionfilm mitgespielt haben.
  12. Geben Sie für jeden Schauspieler die folgende Info aus: SVNr, Name, Geburtsdatum, Anzahl der Filme, Anzahl der verschiedenen Rollen, sowie die längste Drehdauer
  13. Gesucht ist der Film mit der kürzesten Drehdauer, wobei die Drehdauer ausgegeben werden soll.
  14. Geben Sie für jeden Film Titel, Jahr, Anzahl der Figuren, Anzahl der beteiligten Schauspieler, sowie die Drehdauer aus.
  15. Geben Sie für alle verstorbenen Regiseure SVNr, Name und die Anzahl der Filme, bei denen Sie Regie geführt haben aus.
  16. Geben Sie alle Filme aus, von denen es keine Fortsetzung gibt.
  17. Geben Sie alle Filme zusammen mit der Anzahl der Fremdsprachen, in die sie übersetzt wurden aus.
  18. Geben Sie den Schauspieler aus, der im Jahr 2003 (Erscheinungsjahr) in den meisten Filmen mitgespielt hat aus.
  19. Geben Sie für jedes Jahr die Anzahl der in diesem Jahr erschienen File aus. Sortieren Sie das Ergebnis absteigend nach der Anzahl der Filme und aufsteigend nach der Jahreszahl.
  20. Geben Sie das Jahr aus, in dem die wenigsten Filme herausgekommen sind.
  21. Geben Sie alle Personen, sowie die Anzahl der Filme an denen sie beteiligt sind aus. Sortieren Sie nach der Anzahl der Filme.
  22. Geben Sie alle Schauspieler aus, die keine anderen Tätigkeiten (also auch nicht als Sprecher) ausgeübt haben.
  23. Geben Sie alle Filme aus, in denen keine Schauspieler mitgespielt haben.
  24. Geben Sie die Sprache aus, bei der es im Durchschnitt am längsten dauert, bis Filme in diese übersetzt werden.
  25. Geben Sie alle Schauspieler aus, zusammen mit der Anzahl der Figuren, die sie gesprochen haben, die Anzahl der Filme, an denen Sie als Sprecher beteiligt waren, sowie welchem Prozentsatz der Filme mit Sprechern dies entspricht.